perm filename XAP.DOC[XGP,BGB] blob sn#044856 filedate 1973-05-26 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00004 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002		 XAP - XEROX ASSEMBLE AND PRINT.
C00005 00003	ESCAPE CHARACTER.____________________________________________________
C00007 00004	VECTORS._____________________________________________________________
C00010 ENDMK
C⊗;
	 XAP - XEROX ASSEMBLE AND PRINT.
	 Bruce g. Baumgart & Tovar Mock.

INTRODUCTION.

	XAP assembles text,   III buffers,   graphics and  video into
binary image  rasters which are then printed on  the XGP. The goal of
XAP is to provide minimal XGP service at Stanford right now.

INPUT STREAM.

	The XAP  input scanner has  a command mode  and a  text mode.
The scanner starts  by rescaning the R XAP monitor command line for a
semicolon; after the  semicolon,   XAP accepts one  teletype line  of
commands. For example:

	.R XAP;@FILE 		will print a text file on the XGP.
	.R XAP;⊗IIIBUF 		will print a III buffer.
	.R XAP;M0XMAS25;@FILE 	will print a file in XMAS font.

	On  the whole,    in  command  mode semicolon  is  a  command
delimiter; any letter or argument  or syntax error is a no operation;
and the command for entering text  mode is select-font F<n>. In  text
mode, characters are on the whole assembled  into the XGP bit raster;
the  text mode is escaped  into command mode by  the character tilde,
~, ASCII 32.


THE XGP PAGE RASTER.

	The central geometric entity  in XAP is the Page.The  logical
page size is 2048 rows by 1536 columns.

	Physical page size is 8.5" by 11".
	Printible page size 7.5" BY 10"
	7.5" IS 40 WORDS PER LINE IS 1440 XCOLUMNS.
	10" IS 2000 XROWS.
	BUFFER SIZE IS (41 WORDS PER ROW)*(2000 ROWS) = 82000 WORDS.

THE XAP "PEN" POSITION.



ESCAPE CHARACTER.____________________________________________________

	~~ 	Quote escape character.
	~|x	Change escape character to x.

The XAP escape character is TILDE, "~", ASCII 32 octal.
The escape character terminates TEXT-MODE and returns control to
the command scanner, which is COMMAND-MODE.


FONT DECLARATION, SELECTION AND RELEASE._____________________________

M<n><font file name>;	Load font file.
F<n>			Select font number n.
f<n>X			Print next character only in selected font.
{<n>			Declare font <n> delimiters, curly brackets.

	Where the font number  n ε {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}.
The  curly brackets  declaration also works  for parens  "()", square
brackets "[]", left and right horse shoes "⊂⊃", left and  right angle
brackets "<>", and left and right anglebar brackets "≤≥".

VECTORS._____________________________________________________________

	V<row>,<column>;	Absolute visible vector.
	I<row>,<column>;	Absolute invisible vector.
	D<row>,<column>;	Absolute dashed vector.
	P<row>,<column>;	Absolute point vector.
	
Lower case v, i, d and p specify relative mode.
Upper case V, I, D and P specify absolute mode.
The row and column arguments are ASCII decimal numerals.
(get arrowheads implemented).

CIRCULAR ARCS and POLYNOMIAL ARCS.____________________________________

   C<radius>,<arc-displacement>,<arc-length>;	Circular arc command.
   R<radius1>,<arc-displacement>,<radius2>;	Radial vector command.
   A<xlo>,<xhi>,<coef0>,<coef1>,...,<coefN>;	Arc polynomial command.

INDIRECT FILES.______________________________________________________
COMMANDS & TEXT, III BUFFERS, VIDEO IMAGES.

	~@filename	place uppermost left at pen position.
	~⊗filename	place center at pen position.
	~S<scale>;	set scale for III buffers, scale 1.0 means
			1024 xerox elements to III full screen size.
			Negative sets only vertical scale-Y; Positive
			scale sets both scale-X and scale-Y.


TEXT JUSTIFICATION AND MARGINS._____________________________________

PAINT COMMANDS._____________________________________________________